package com.iwhalecloud.bss.kite.cucc.client.vo.scene;

import com.iwhalecloud.bss.kite.client.vo.scene.ModuleVO;
import com.iwhalecloud.bss.kite.cucc.client.dto.offer.FeeTypeDTO;
import io.swagger.annotations.ApiModelProperty;

import java.util.List;
import java.util.Map;

/**
 * 资费信息
 */
public class OptionalAdditionalOfferModuleVO extends ModuleVO {

    /**
     * serialVersionUID <br>
     */
    private static final long serialVersionUID = 4877964093481223984L;

    @ApiModelProperty("展示添加按钮")
    private boolean AddButton;

    @ApiModelProperty("资费属性")
    private Map<String, Object> tableFeeAttr;

    @ApiModelProperty("资费属性-收费方资费")
    private Map<String, Object> tableChargeFeeAttr;

    @ApiModelProperty("展示预览按钮")
    private boolean previewFlag;

    @ApiModelProperty("是否附属资费")
    private boolean addFee;

    @ApiModelProperty("销售品名称")
    private String offerName;

    @ApiModelProperty("销售品实例ID")
    private String offerInstId;

    /**
     * 用于区分是否有发起方资费、收费方资费
     */
    @ApiModelProperty("可添加资费类型")
    private List<FeeTypeDTO> feeTypes;

    @ApiModelProperty("资费合计属性")
    private Map<String, Object> tableStatisticsFeeAttr;

    @ApiModelProperty("资费合计属性-收费方资费")
    private Map<String, Object> tableStatisticsChargeFeeAttr;

    public String getOfferInstId() {
        return offerInstId;
    }

    public void setOfferInstId(String offerInstId) {
        this.offerInstId = offerInstId;
    }

    public boolean isAddFee() {
        return addFee;
    }

    public void setAddFee(boolean addFee) {
        this.addFee = addFee;
    }

    public String getOfferName() {
        return offerName;
    }

    public void setOfferName(String offerName) {
        this.offerName = offerName;
    }

    public boolean isPreviewFlag() {
        return previewFlag;
    }

    public void setPreviewFlag(boolean previewFlag) {
        this.previewFlag = previewFlag;
    }

    public Map<String, Object> getTableFeeAttr() {
        return tableFeeAttr;
    }

    public void setTableFeeAttr(Map<String, Object> tableFeeAttr) {
        this.tableFeeAttr = tableFeeAttr;
    }

    public boolean getAddButton() {
        return AddButton;
    }

    public void setAddButton(boolean addButton) {
        AddButton = addButton;
    }

    public List<FeeTypeDTO> getFeeTypes() {
        return feeTypes;
    }

    public void setFeeTypes(List<FeeTypeDTO> feeTypes) {
        this.feeTypes = feeTypes;
    }

    public Map<String, Object> getTableStatisticsFeeAttr() {
        return tableStatisticsFeeAttr;
    }

    public void setTableStatisticsFeeAttr(Map<String, Object> tableStatisticsFeeAttr) {
        this.tableStatisticsFeeAttr = tableStatisticsFeeAttr;
    }

    public Map<String, Object> getTableChargeFeeAttr() {
        return tableChargeFeeAttr;
    }

    public void setTableChargeFeeAttr(Map<String, Object> tableChargeFeeAttr) {
        this.tableChargeFeeAttr = tableChargeFeeAttr;
    }

    public Map<String, Object> getTableStatisticsChargeFeeAttr() {
        return tableStatisticsChargeFeeAttr;
    }

    public void setTableStatisticsChargeFeeAttr(Map<String, Object> tableStatisticsChargeFeeAttr) {
        this.tableStatisticsChargeFeeAttr = tableStatisticsChargeFeeAttr;
    }
}
